package com.ry.bhwktapp.home.ui

import com.bbq.base.utils.isNull

/**
 * kt 语言的计算属性与防范竞态条件
 */
class KtBase71 {
    val number: Int = 0

    //计算属性
    val number2: Int
        get() = (1..10000).shuffled().first()//取出1-10000的随机值
    //防范竞态条件
    var info: String? =null

    //当使用一个变量时候，这个变量可能为nlll 可能为空，这时候要使用防范竞态条件，这是kt编程的规范化
    fun getInfof(): String {
//      这就是防范竞态条件
        return info?.let {
            if (it.isBlank()) {
                "info的值是空"
            }else{
                "info的值是$it"
            }
        }?:"info为null 请检查代码！"
    }

}


fun main() {
    println(KtBase71().number)
    println(KtBase71().number2)
    println(KtBase71().getInfof())
}
